Database Tutorials Data Manipulation (Create, Read, Update, Delete) গাইড ও নোট

259

SQLAlchemy তে Data Manipulation বা CRUD (Create, Read, Update, Delete) অপারেশন অত্যন্ত গুরুত্বপূর্ণ। ORM (Object Relational Mapping) ব্যবহারের মাধ্যমে, SQLAlchemy আপনাকে ডেটাবেসে এই অপারেশনগুলো সহজে পরিচালনা করতে সাহায্য করে, যেখানে Python কোডের মাধ্যমে ডেটাবেস টেবিলের রেকর্ড ম্যানিপুলেট করা যায়।

এখানে Create, Read, Update, এবং Delete অপারেশন SQLAlchemy ORM এর মাধ্যমে কিভাবে করা যায়, তা নিয়ে বিস্তারিত আলোচনা করা হলো।


Create (ডেটা তৈরি করা)

SQLAlchemy তে ডেটা তৈরি করতে হলে প্রথমে একটি Model অবজেক্ট তৈরি করতে হয় এবং সেই অবজেক্টটি সেশন এর মাধ্যমে ডেটাবেসে সেভ করা হয়।

উদাহরণ:

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

# Declarative Base তৈরি
Base = declarative_base()

# User মডেল তৈরি
class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    name = Column(String)
    age = Column(Integer)

# SQLite ডেটাবেসে সংযোগ
engine = create_engine('sqlite:///example.db', echo=True)

# Session তৈরি
Session = sessionmaker(bind=engine)
session = Session()

# নতুন ইউজার তৈরি
new_user = User(name="Alice", age=30)

# সেশন দিয়ে ডেটাবেসে ইনসার্ট করা
session.add(new_user)
session.commit()  # পরিবর্তন ডেটাবেসে সেভ

# সেশন বন্ধ করা
session.close()

এখানে, একটি নতুন User অবজেক্ট তৈরি করা হয়েছে এবং সেশন ব্যবহার করে add() মেথডের মাধ্যমে এটি ডেটাবেসে ইনসার্ট করা হয়েছে। commit() মেথডের মাধ্যমে পরিবর্তন ডেটাবেসে সেভ করা হয়েছে।


Read (ডেটা পড়া)

SQLAlchemy তে ডেটাবেস থেকে ডেটা রিড (পড়া) করার জন্য query() মেথড ব্যবহার করা হয়। এটি ORM মডেলের সাথে কাজ করে ডেটাবেস থেকে রেকর্ড ফেচ (fetch) করে।

উদাহরণ:

# Session তৈরি
session = Session()

# সব ইউজার রিড করা
users = session.query(User).all()

# রেকর্ড প্রিন্ট করা
for user in users:
    print(user.name, user.age)

# সেশন বন্ধ করা
session.close()

এখানে, session.query(User).all() ব্যবহার করে users টেবিলের সমস্ত রেকর্ড ফেচ করা হয়েছে এবং তারপর for লুপের মাধ্যমে ডেটা প্রিন্ট করা হয়েছে।


Update (ডেটা আপডেট করা)

SQLAlchemy তে ডেটা আপডেট করতে হলে প্রথমে সংশ্লিষ্ট রেকর্ডকে খুঁজে বের করতে হয় এবং তারপর সেই রেকর্ডে নতুন মান অ্যাসাইন করে commit() মেথডের মাধ্যমে ডেটাবেসে পরিবর্তন সেভ করতে হয়।

উদাহরণ:

# Session তৈরি
session = Session()

# ইউজার খোঁজা (id=1)
user = session.query(User).filter_by(id=1).first()

# ইউজারের নাম পরিবর্তন করা
if user:
    user.name = "Bob"
    session.commit()  # পরিবর্তন ডেটাবেসে সেভ

# সেশন বন্ধ করা
session.close()

এখানে, session.query(User).filter_by(id=1).first() এর মাধ্যমে id=1 ইউজার খুঁজে বের করা হয়েছে এবং তারপর তার name পরিবর্তন করে session.commit() মেথডের মাধ্যমে সেভ করা হয়েছে।


Delete (ডেটা মুছে ফেলা)

SQLAlchemy তে ডেটা মুছে ফেলার জন্য, প্রথমে সংশ্লিষ্ট রেকর্ডকে খুঁজে বের করতে হয় এবং তারপর delete() মেথড ব্যবহার করে সেশন থেকে মুছে ফেলতে হয়।

উদাহরণ:

# Session তৈরি
session = Session()

# ইউজার খোঁজা (id=1)
user = session.query(User).filter_by(id=1).first()

# ইউজার মুছে ফেলা
if user:
    session.delete(user)  # ডিলিট করা
    session.commit()  # পরিবর্তন ডেটাবেসে সেভ

# সেশন বন্ধ করা
session.close()

এখানে, session.query(User).filter_by(id=1).first() এর মাধ্যমে id=1 ইউজার খুঁজে বের করা হয়েছে এবং তারপর session.delete(user) ব্যবহার করে সেই ইউজার মুছে ফেলা হয়েছে। session.commit() এর মাধ্যমে পরিবর্তন ডেটাবেসে সেভ করা হয়েছে।


সারাংশ

SQLAlchemy তে CRUD (Create, Read, Update, Delete) অপারেশনগুলো খুবই সহজ এবং কার্যকরভাবে করা যায়। Create অপারেশন একটি নতুন অবজেক্ট তৈরি করে এবং তা ডেটাবেসে সেভ করে, Read অপারেশন ডেটাবেস থেকে ডেটা ফেচ করে, Update অপারেশন কোনো রেকর্ডের মান পরিবর্তন করে এবং Delete অপারেশন একটি রেকর্ড মুছে ফেলে। SQLAlchemy ORM এই সকল অপারেশনকে Python কোডের মাধ্যমে সহজ করে তোলে, যা ডেটাবেস ব্যবস্থাপনার কাজকে অনেক দ্রুত এবং কার্যকর করে।

Content added By
Promotion

Are you sure to start over?

Loading...